package com.xiaoq.ar.vo;

import com.fasterxml.jackson.annotation.JsonAutoDetect;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import java.util.List;

/**
 * Created by chenjh on 2018/3/5.
 */
@JsonAutoDetect(fieldVisibility = JsonAutoDetect.Visibility.ANY, getterVisibility = JsonAutoDetect.Visibility.NONE, setterVisibility = JsonAutoDetect.Visibility.NONE)
@JsonInclude(value = JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public class ARActivityVo {

    @ApiModelProperty(name = "id", value = "活动主键", position=0)
    private String id;

    /*** 活动介绍Image */
    @ApiModelProperty(name = "introdImge", value = "活动介绍Image", position=10)
    private String introdImge;

    /*** 提供方(景区)ID*/
    @ApiModelProperty(name = "providerId", value = "提供方ID", position=20)
    private String providerId;

	/*** 景区名称*/
	@ApiModelProperty(name = "providerName", value = "景区名称", position=20)
	private String providerName;

    /*** 提供方类型*/
    @ApiModelProperty(name = "providerType", value = "提供方类型", position=30)
    private String providerType;

    /*** 藏宝 地图 线路图*/
    @ApiModelProperty(name = "mapImg", value = "藏宝 地图 线路图", position=40)
    private String mapImg;

    /*** AR活动规则 描述*/
    @ApiModelProperty(name = "rule", value = "AR活动规则 描述", position=50)
    private String rule;

    /*** 开始时间*/
    @ApiModelProperty(name = "startTime", value = "开始时间", position=60)
    private long startTime;

    /*** 结束时间*/
    @ApiModelProperty(name = "endTime", value = "结束时间", position=70)
    private long endTime;

    /*** 活动名称*/
    @ApiModelProperty(name = "name", value = "活动名称", position=80)
    private String name;

    /*** 藏宝点列表*/
    @ApiModelProperty(name = "treasureSpotList", value = "藏宝点列表", position=90)
    private List<TreasureSpotVO> treasureSpotList;

    /*** AR效果图*/
    @ApiModelProperty(name = "arImgUrl", value = "AR效果图", position=100)
    private String arImgUrl;

    /*** 宝物图*/
    @ApiModelProperty(name = "treasureImg", value = "宝物图", position=110)
    private String treasureImg;

    /*** 藏宝点个数*/
    @ApiModelProperty(name = "treasureCount", value = "藏宝点个数", position=120)
    private int treasureCount;

    /*** 还需捕获小Q的个数*/
    @ApiModelProperty(name = "remainNum", value = "还需捕获小Q的个数", position=130)
    private int remainNum;

	@ApiModelProperty(name = "hasNum", value = "已捕获的个数", position=135)
	private long hasNum;

	@ApiModelProperty(name = "exist", value = "AR寻宝是否存在, true 存在, false 不存在", position=140)
	private boolean exist;

	@ApiModelProperty(name = "exchange", value = "是否已兑换, true 已兑换, false 未兑换", position=145)
	private boolean exchange;

	/*** arMainImgUrl AR 主图*/
	@ApiModelProperty(name = "arMainImgUrl", value = "arMainImgUrl AR 主图", position=150)
	private String arMainImgUrl;

	/*** 打卡距离 米 */
	@ApiModelProperty(name = "punchDistance", value = "打卡距离 米", position=160)
	private long punchDistance;

	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	public String getIntrodImge() {
		return introdImge;
	}

	public void setIntrodImge(String introdImge) {
		this.introdImge = introdImge;
	}

	public String getProviderId() {
		return providerId;
	}

	public void setProviderId(String providerId) {
		this.providerId = providerId;
	}

	public String getProviderType() {
		return providerType;
	}

	public void setProviderType(String providerType) {
		this.providerType = providerType;
	}

	public String getMapImg() {
		return mapImg;
	}

	public void setMapImg(String mapImg) {
		this.mapImg = mapImg;
	}

	public String getRule() {
		return rule;
	}

	public void setRule(String rule) {
		this.rule = rule;
	}

	public long getStartTime() {
		return startTime;
	}

	public void setStartTime(long startTime) {
		this.startTime = startTime;
	}

	public long getEndTime() {
		return endTime;
	}

	public void setEndTime(long endTime) {
		this.endTime = endTime;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public List<TreasureSpotVO> getTreasureSpotList() {
		return treasureSpotList;
	}

	public void setTreasureSpotList(List<TreasureSpotVO> treasureSpotList) {
		this.treasureSpotList = treasureSpotList;
	}

	public String getArImgUrl() {
		return arImgUrl;
	}

	public void setArImgUrl(String arImgUrl) {
		this.arImgUrl = arImgUrl;
	}

	public String getTreasureImg() {
		return treasureImg;
	}

	public void setTreasureImg(String treasureImg) {
		this.treasureImg = treasureImg;
	}

	public int getTreasureCount() {
		return treasureCount;
	}

	public void setTreasureCount(int treasureCount) {
		this.treasureCount = treasureCount;
	}

	public int getRemainNum() {
		return remainNum;
	}

	public void setRemainNum(int remainNum) {
		this.remainNum = remainNum;
	}

	public boolean isExist() {
		return exist;
	}

	public void setExist(boolean exist) {
		this.exist = exist;
	}

	public long getHasNum() {
		return hasNum;
	}

	public void setHasNum(long hasNum) {
		this.hasNum = hasNum;
	}

	public boolean isExchange() {
		return exchange;
	}

	public void setExchange(boolean exchange) {
		this.exchange = exchange;
	}

	public String getArMainImgUrl() {
		return arMainImgUrl;
	}

	public void setArMainImgUrl(String arMainImgUrl) {
		this.arMainImgUrl = arMainImgUrl;
	}

	public long getPunchDistance() {
		return punchDistance;
	}

	public void setPunchDistance(long punchDistance) {
		this.punchDistance = punchDistance;
	}

	public String getProviderName() {
		return providerName;
	}

	public void setProviderName(String providerName) {
		this.providerName = providerName;
	}
}
